package cmd

import (
	"fmt"

	"github.com/spf13/cobra"
)

func init() {
	rootCmd.AddCommand(rollbakCmd)

	rollbakCmd.Flags().BoolP("list", "l", false, "列出部署过的信息")
	rollbakCmd.Flags().BoolP("tag", "t", false, "版本标签")
}

var rollbakCmd = &cobra.Command{
	Use:   "rollback",
	Short: "部署回滚",
	Run: func(cmd *cobra.Command, args []string) {
		list, _ := cmd.Flags().GetBool("list")
		tag, _ := cmd.Flags().GetBool("tag")
		switch {
		case list:
			// 输出信息格式:
			// 2025-10-20 17:32:20 DESC web01,web02,dev02 USER root CMD yum install nginx -y tag v1
			// 2025-10-20 17:32:20 DESC web01,web02,dev02 USER root CMD yum install nginx -y tag v2
			fmt.Println("信息输出格式: 2025-10-20 17:32:20 DESC web01,web02,dev02 USER root CMD yum install nginx -y TAG v1")
			fmt.Println("信息输出格式: 2025-10-20 17:32:20 DESC web01,web02,dev02 USER root CMD yum install nginx -y TAG v2")
		case tag:
			// 输出信息格式:
			// 2025-10-20 17:32:20 DESC web01,web02 tag v1
			// 2025-10-20 17:20:15 DESC web01,web02 tag v2
			fmt.Println("信息输出格式: 2025-10-20 17:32:20 DESC web01,web02 TAG v1")
			fmt.Println("信息输出格式: 2025-10-20 17:32:20 DESC web01,web02 TAG v2")
		default:
			fmt.Println("使用 'rollbak --help' 查看可用命令")
		}

		// // 调用内部业务逻辑
		// fmt.Println("部署回滚")
	},
}
